ניסוי בפייתון מכון טכנולוגי לישראל הניסוי מתקיים בבניין פישבך, חדר 573 )במסדרון למאייר(. המאחר ביותר מ- 53 דקות לא יורשה לבצע את הניסוי.

Size: px
Start display at page:

Download "ניסוי בפייתון מכון טכנולוגי לישראל הניסוי מתקיים בבניין פישבך, חדר 573 )במסדרון למאייר(. המאחר ביותר מ- 53 דקות לא יורשה לבצע את הניסוי."

Transcription

1 הטכניון מכון טכנולוגי לישראל הפקולטה להנדסת חשמל, המעבדה למערכות תוכנה מרושתות גרסה 1.1: נובמבר 1111, איתי אייל, אלכס שרמן הניסוי מתקיים בבניין פישבך, חדר 573 )במסדרון למאייר(. המאחר ביותר מ- 53 דקות לא יורשה לבצע את הניסוי. המעבדה למערכות תוכנה מרושתות, הפקולטה להנדסת חשמל אתר: טלפון: דואל:

2 2 / 27 המעבדה למערכות תוכנה מרושתות תוכן העניינים תוכן העניינים...1 בטיחות...3 מבוא... 5 הוראות הפעלה...6 דוגמא ראשונה...7 פונקציות... 8 אובייקטים...8 משתנים והדפסתם, הצבה תנאים ולולאות קבצים ביטויים רגולריים ביבליוגרפיה כל הערה והמלצה לשיפור תתקבל בברכה מנושאים חסרים או לא ברורים ועד שגיאות הקלדה. אנא העבירו הערותיכם למנחה הניסוי. תודה, צוות המעבדה.

3 3 / 27 המעבדה למערכות תוכנה מרושתות בטיחות כללי הנחיות הבטיחות מובאות לידיעת הסטודנטים כאמצעי למניעת תאונות בעת ביצוע ניסויים ופעילות במעבדה למערכות תוכנה. מטרתן להפנות תשומת לב לסיכונים הכרוכים בפעילויות המעבדה, כדי למנוע סבל לאדם ונזק לציוד. אנא קראו הנחיות אלו בעיון ופעלו בהתאם להן. מסגרת הבטיחות במעבדה אין לקיים ניסויים במעבדה ללא קבלת ציון עובר בקורס הבטיחות של מעבדות ההתמחות באלקטרוניקה )שהינו מקצוע קדם למעבדה זו(. לפני התחלת הניסויים יש להתייצב בפני מדריך הקבוצה לקבלת תדריך ראשוני הנחיות בטיחות. אין לקיים ניסויים במעבדה ללא השגחת מדריך ללא אישור מראש. מדריך הקבוצה אחראי להסדרים בתחום פעילותך במעבדה; נהג על פי הוראותיו. עשה ואל תעשה יש לידע את המדריך או את צוות המעבדה על מצב מסוכן וליקויים במעבדה או בסביבתה הקרובה. לא תיעשה במזיד ובלי סיבה סבירה, פעולה העלולה לסכן את הנוכחים במעבדה. אסור להשתמש לרעה בכל אמצעי או התקן שסופק או הותקן במעבדה. היאבקות, קטטה והשתטות אסורים. מעשי קונדס מעוררים לפעמים צחוק אך הם עלולים לגרום לתאונה. אין להשתמש בתוך המעבדה בסמים או במשקאות אלכוהוליים, או להיות תחת השפעתם. אין לעשן במעבדה ואין להכניס דברי מאכל או משקה. בסיום העבודה יש להשאיר את השולחן נקי ומסודר. בניסיון לחלץ דפים תקועים במדפסת - שים לב לחלקים חמים! בטיחות חשמל בחלק משולחנות המעבדה מותקנים בתי תקע )"שקעים"( אשר ציוד המעבדה מוזן מהם. אין להפעיל ציוד המוזן מבית תקע פגום. אין להשתמש בציוד המוזן דרך פתילים )"כבלים גמישים"( אשר הבידוד שלהם פגום או אשר התקע שלהם אינו מחוזק כראוי. אסור לתקן או לפרק ציוד חשמלי כולל החלפת נתיכים המותקנים בתוך הציוד; יש להשאיר זאת לטפול הגורם המוסמך. אין לגעת בארון החשמל המרכזי, אלא בעת חירום וזאת - לצורך ניתוק המפסק הראשי. מפסקי לחיצה לשעת חירום במעבדה ישנם מפסקים ראשיים להפסקת אספקת החשמל. זהה את מקומם. בעת חירום יש להפעיל מפסקי החשמל הראשיים.

4 4 / 27 המעבדה למערכות תוכנה מרושתות בטיחות אש, החייאה ועזרה ראשונה במעבדה ממוקמים מטפי כיבוי אש זהה את מקומם. אין להפעיל את המטפים, אלא בעת חירום ובמידה והמדריכים וגורמים מקצועיים אחרים במעבדה אינם יכולים לפעול. יציאות חירום בארוע חירום הדורש פינוי, כגון שריפה, יש להתפנות מיד מהמעבדה. דיווח בעת אירוע חירום יש לדווח מידית למדריך ולאיש סגל המעבדה. המדריך או איש סגל המעבדה ידווחו מיידית לקצין הביטחון בטלפון; , במידה ואין הם יכולים לעשות כך, ידווח אחד הסטודנטים לקצין הביטחון. לפי הוראת קצין הביטחון, או כאשר אין יכולת לדווח לקצין הביטחון, יש לדווח, לפי הצורך: 111, משטרה 111, מגן דוד אדום 111, מכבי אש גורמי בטיחות ו/או ביטחון אחרים. בנוסף לכך יש לדווח ליחידת סגן המנמ"פ לעניני בטיחות; 1176/ , 7776 בהמשך, יש לדווח לאחראי משק ותחזוקה; לסיום, יש לדווח ל: מהנדס המעבדה )טל. 4635( בעת הצורך ניתן להודיע במקום למהנדס המעבדה לטכנאי המעבדה.

5 5 / 27 המעבדה למערכות תוכנה מרושתות מבוא שפת התכנות פייתון הופיעה בשנת 1111, ומאז יציאת גרסה 1 שלה בשנת 1111 היא צוברת פופולריות רבה בזכות הקלות בה ניתן לכתוב בעזרתה תוכניות מורכבות. השפה מאפשרת פיתוח מהיר של סקריפטים, סימולציות וגם מערכות שלמות. ספר הניסוי הזה מהווה קורס מבוא לפייתון. הוא נועד לתת כלים ראשונים לשימוש בשפה, תוך הישענות על ספרי עזר או מקורות באינטרנט. רשימה של מקורות כאלה נמצאת בפרק הביבליוגרפיה. חלקם, בפרט האתר המומלץ,Dive into python יכולים לשמש תחליף לספר זה עבור סטודנטים המעוניינים לרכוש ידע מעמיק יותר של השפה. לאלה המעוניינים לכתוב תוכניות מורכבות, מומלץ להתחיל בלימוד תכנות מונחה עצמים, חריגות ותכנות מקבילי בפייתון נושאים אשר לא מכוסים בספר זה בשל מגבלות מקום. הרקע הנדרש לקריאת חוברת זו: ידע בסיסי בתכנות ובתכנות מונחה עצמים.)C++/Java( השאלות בגוף החוברת מהוות את השאלות של הדו"ח המכין לניסוי המעבדה. שימו לב: לא ניתן לבצע את הניסוי ללא הגשת דו"ח מכין.

6 6 / 27 המעבדה למערכות תוכנה מרושתות הוראות הפעלה הפעלה אינטראקטיבית Shell( )Interactive ניתן להשתמש בפייתון באופן אינטראקטיבי לכתוב פקודות לביצוע מיידי, ולקבל בחזרה את הערכים המוחזרים. לשם כך, יש להפעיל את פייתון על ידי כתיבת הפקודה python מתוך קונסולה במחשב בו התוכנה מותקנת. )הוראות התקנה באתר.) התוכנה מופעלת ועל המסך מופיע ה- shell.interactive בתוך ה- shell ניתן לכתוב פקודות פייתון )בדוגמא להלן נכתבה הפקודה world" )print "Hello והתוצאה מודפסת מיד )בדוגמא להלן מודפסות המלים.)Hello world ~$ python Python (r264:75706, Dec , 18:45:15) [GCC 4.4.1] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> print "Hello world" Hello world >>> ליציאה, יש להקיש את צירוף המקשים.Ctrl+D הרצה משורת פקודה על מנת להריץ תוכניות הנכתבות בשפת פייתון, כותבים את התוכנית בקובץ, לדוגמא הקובץ הבא בעל השם Print "Hello world from a file." :hello.py ~$ python hello.py Hello world from a file. ~$ ואז, מקונסולה, מספקים את שם הקובץ כפרמטר ל- python : תוכנת python מריצה את הקוד מהקובץ,hello.py והתוצאה נכתבת למסך. עם סיום הריצה, הפיקוד חוזר לידי מערכת ההפעלה. פרמטרים משורת הפקודה זמינים בתוכנית פייתון ברשימה בשם.sys.argv האיבר הראשון ברשימה הוא שמה של התוכנית והאיברים הבאים הם הפרמטרים. כדי להשתמש במשתנה זה יש לייבא את המודול.sys כיצד עושים זאת, וכיצד מטפלים ברשימות נלמד בהמשך. Eclipse כדי לכתוב תוכניות גדולות, נוח להשתמש בסביבת עבודה משולבת המספקת כלי debugging נוחים. סביבה מומלצת היא ) Eclipse עם התוסף.)pydev.org( Pydev הוראות וקבצים להתקנה, כמו גם הוראות שימוש וקבצי עזרה ניתן למצוא באתרים הנ"ל.

7 7 / 27 המעבדה למערכות תוכנה מרושתות דוגמא ראשונה 1. import re if name == " main ": file = open("stam.txt") 6. lines = file.readlines() 7. file.close() lines = [line.upper() for line in lines] 10. for line in lines: 11. inparentheses = re.findall("\(.*?\)", line)[0] 12. if inparentheses: 13. print inparentheses להלן תוכנית פייתון: נפתח בהערה מפתיעה על הסינטקס של פייתון. בלוקים בפייתון מסומנים על ידי הזחה,)indentation( ולא על ידי הקפתם בסוגריים מסולסלים כמו ב- C וב- Java. המשפט לו כפוף הבלוק מסתיים בנקודתיים, כפי שניתן לראות בשורות,3.,10 12 שימו לב בפייתון אין צורך ב-; בסוף שורה. זה לא מזיק. זה גם לא מועיל. ביאור התוכנית: 1: ייבוא פונקציות של ביטויים רגולריים expressions( )regular בהן נשתמש בהמשך )שורה 11(. 3: הסבר על משמעות שורה זו יגיע בפרק העוסק במודולים. בשלב זה ניתן להתעלם ממנה. 5: פתח את הקובץ stam.txt ושייך אותו למשתנה.file 6: קרא את שורות הקובץ לתוך מערך של מחרוזות בשם,lines כל שורה במחרוזת משלה. 7: סגור את הקובץ. 1: עבור כל שורה במערך,lines צור מחרוזת עם אותו תוכן אך אותיות גדולות.)capitals( את אוסף המחרוזות הנוצר הכנס למערך.lines 11: לכל אחת מהשורות ב- lines 11: חפש את הביטוי הראשון בסוגריים. כאן אנו משתמשים בביטוי רגולרי המתאר "ביטוי בסוגריים". לשם כך אנחנו נעזרים בספריה re אותה ייבאנו בשורה 1. 11: אם יש ביטוי כזה, 13: הדפס אותו. (Hello), my name is (Inigo Montoya). It's a small (world) after all. (HELLO) (WORLD) למשל, אם הקובץ stam.txt הפלט של התוכנית הנ"ל יהיה: הינו:

8 8 / 27 המעבדה למערכות תוכנה מרושתות פונקציות פונקציה בפייתון מגדירים בעזרת המלה השמורה.def כל הפונקציות בפייתון מחזירות ערך, None אם לא נאמר אחרת. מספר הפרמטרים אינו בהכרח קבוע. ניתן לקבוע שלחלק מהפרמטרים יש ברירת מחדל. בדוגמא להלן ניתן לוותר על הפרמטר השני אשר מקבל כברירת מחדל את הערך 1. בתחילת כל פונקציה ניתן )ורצוי, אחרת נפגעים הקריאות קריאות הקוד והציון בתרגיל( לרשום תיעוד. התיעוד נרשם בין שלשת גרשיים ונקרא.docstring התיעוד זמין בזמן ריצה כשדה של הפונקציה )בדוגמא להלן הסמן עובר מעל שם הפונקציה ב- eclipse. כאשר וכמו כן מופיע כ- tooltip,)multiply. doc def multiply(x, times=2): """Multiply a variable Multiplies the variable x times times. Returns the multiplication result.""" return x * times טיפוסי הנתונים נקבעים בזמן הריצה. עבור הפונקציה הנ"ל, למשל, הטיפוס של x והטיפוס של הערך המוחזר אינם קבועים מראש: מודולים >>> multiply(3) 6 >>> multiply("ni ", 9) 'ni ni ni ni ni ni ni ni ni ' פייתון מציע מגוון ספריות עם פונקציות ואובייקטים לצרכים רבים ומגוונים טיפול במדיה, תקשורת, מבני נתונים ועוד. ספריות מיובאות בעזרת הפונקציה המובנית.import בדוגמא הראשונה לעיל ייבאנו את ספריית הביטויים הרגולריים.re ניתן לייצר ספריות חדשות על ידי שמירת קובץ פייתון עם פונקציות ואובייקטים וביצוע import לקובץ זה. בעת ביצוע import יבוצעו כל הפקודות הרשומות בקובץ. ואולם, לעתים נרצה שהקובץ יריץ פקודות מסויימות רק אם הוא נקרא ישירות )ק' על ידי הרצת python filename ולא על ידי.)import לשם כך ניתן לבדוק את תוכנו של המשתנה. name תוכנו של משתנה זה הינו המחרוזת " main " אם ורק אם הקובץ נקרא ישירות. מומלץ תמיד להקדים לפקודות העיקריות של הקובץ )ולא לפני הפונקציות( שאילתה הבודקת האם הוא נקרא ישירות. כך נעשה בדוגמא הראשונה בחוברת. הרגל זה יבטיח שתוכלו להשתמש בכל קובץ כספרייה, אם תחפצו בכך. אובייקטים בתכנות מונחה עצמים, מידע ופעולות מצורפים יחד. איחוד כזה של מידע ופעולות נקרא אובייקט )עצם(. לכל אובייקט יש תכונות )משתנים( ויש מתודות )פונקציות(. בפייתון, כל דבר נשמר כאובייקט במובן של תכנות מונחה עצמים. זה כולל את כל סוגי המשתנים לעיל, מודולים )להם עושים )import וגם פונקציות )עליהן נלמד בהמשך(. לתכונות ולפעולות של אובייקט קוראים על פי שמם אותו רושמים אחרי שם האובייקט ונקודה. בדוגמא לעיל הופעלה המתודה close של האובייקט file כדי לסגור את הקובץ.

9 9 / 27 המעבדה למערכות תוכנה מרושתות כדי להבין את ההתנהגות של פייתון, יש להבדיל בין אובייקט לבין שם של אובייקט. האובייקט הוא התכונות והמתודות, ושם האובייקט מייצג רפרנס )הפניה( לאובייקט. לפיכך, יכול להיות אובייקט אשר מפנים אליו מספר שמות. כמו כן, שם המצביע לאובייקט אחד, יכול בשלב מאוחר יותר בתוכנית להצביע לאובייקט אחר מסוג מספר, פונקציה או רשימה: >>> a = 7 # a is the number 7 >>> a 7 >>> a = len # a is the function len >>> len("goodbye") 7 >>> a("goodbye") 7 >>> a = "goodbye" # a is the string goodbye >>> a 'goodbye' באופן מפתיע, גם הערכים עצמם הינם עצמים. המספר המרוכב 4+3j, לדוגמא, הוא אובייקט עם תכונות וניתן לבצע עליו פעולות. כאשר כותבים 4+3j המשמעות היא מצביע לאובייקט שזה ערכו. לפיכך נרשום ונקבל: >>> (4+3j).conjugate() (4-3j) משמעותם של אופרטורים נקבעת על פי האובייקטים עליהם הם פועלים. למשל האופרטור + המופעל על מספרים משמעו סכום, אך כשהוא מופעל על מחרוזות משמעו שרשור מחרוזות. >>> >>> "5" + "5" '55' האובייקטים בפייתון מתחלקים לשני סוגים אובייקטים הניתנים לשינוי )mutable( ואובייקטים שאינם ניתנים לשינוי.)immutable( טיפוס הרשימה שנכיר בהמשך הוא דוגמא לאובייקט הניתן לשינוי אפשר להוסיף ולהסיר איברים מרשימה. טיפוס המחרוזת, שגם אותו נכיר בהמשך, הוא דוגמא לטיפוס שאינו ניתן לשינוי. אם רוצים לערוך את המחרוזת אליה מפנה משתנה מסויים, צריך למעשה לשנות את ההפנייה של המשתנה למחרוזת חדשה. בשל האמור לעיל, נשים לב לתכונה מעניינת של העברת פרמטרים לפונקציה. הפרמטרים המתקבלים הם רפרנסים לאובייקטים. הפונקציה יכולה לשנות את האובייקטים שהועברו אליה )בהנחה שהם,)mutable כיוון שהיא מקבלת רפרנס אליהם. מצד שני, היא אינה יכולה לשנות את היעד אליו מצביע הרפרנס. בדוגמא שלהלן שתי פונקציות )המוגדרות בעזרת המלה.)def הראשונה משנה את האובייקט, והשנייה משנה את הרפרנס. def funcaddelement(lst): return lst.append("added from within func") def funcchangeref(lst): lst = [2, 3, 6] if name == " main ": x = [1, 2, 5] funcaddelement(x) print x funcchangeref(x) print x

10 10 / 27 המעבדה למערכות תוכנה מרושתות בפלט שלהלן ניתן לראות שלפונקציה השנייה לא הייתה השפעה. הפלט הוא בשני המקרים סדרה בת 7 איברים. הפונקציה הראשונה הוסיפה את האיבר הרביעי לאובייקט x אשר נקרא בתוך המחרוזת בשם.lst הפונקציה השניה קיבלה ב- lst רפרנס ל- x, אבל החליפה אותו ברפרנס לרשימה אחרת. האובייקט x לא השתנה. [1, 2, 5, 'Added from within func'] [1, 2, 5, 'Added from within func'] dir(x) הפונקציה dir ניתן לקבל את רשימת המתודות של אובייקט בעזרת הפונקציה המובנית.dir עבור האובייקט יש לרשום x נסו זאת כבר עתה עבור מחרוזות ומספרים. help(x) הפונקציה help ניתן לקבל עזרה מפורטת עבור כל אובייקט בעזרת הפונקציה :help משתנים והדפסתם, הצבה בפייתון מספר מבני נתונים מובנים מבנים פשוטים לאחסון מספרים ומחרוזות, ומבנים מורכבים לאחסון אוספי משתנים. לפני שנתחיל בסקירת סוגי המשתנים, להלן מספר פרטים כלליים. כדוגמא נשתמש בינתיים במספרים שלמים ו- Java. C הדומים לשלמים בשפות אחרות דוגמת,)Integer( משתנים נוצרים ברגע שמציבים להם ערך. לא מכריזים עליהם מראש כמו ב- C. למשל, ליצירת משתנה בשם x עם הערך 5, משתמשים בפקודה להצבת הערך: >>> x = 5 >>> y, z = 6, 7 ניתן להציב כמה משתנים יחד. ליצירת המשתנים y ו- z בעלי ערכים 6 ו- 7 בהתאמה: ניתן להדפיס את ערכו של משתנה בעזרת הפקודה המשתנים:.print לאחר הפעלת הפקודות לעיל, ניתן להדפיס את >>> print x 5 >>> print y 6 >>> print z 7

11 11 / 27 המעבדה למערכות תוכנה מרושתות מספרים לסוגיהם קיימים 5 טיפוסים בסיסיים של מספרים. כל מספר בפייתון שייך לאחד הטיפוסים. אופן כתיבת המספר מסביר לשפה מה טיפוסו. בטבלא להלן מפורטים הטיפוסים השונים. טיפוס שלמים )Integer( שלמים ארוכים ( Long )Integer נקודה צפה ( Floating )Point בסיסים 8 ו- 16 ( Octal, )Hex מרוכבים True/False תיאור מספרים שלמים. כמו משתני long של שפת.C שלמים ללא מגבלת גודל. משתני נקודה צפה, כמו Double של C כשמם כשמם כשמם. למעשה,False=0 True=1 דוגמאות 3, -100, 0 עם L בסוף: L עם נקודה ו- e : , 12e-5, 5.4e123 קידומת אפס לבסיס 8, ואפס-איקס ל- 16 : 01357, 0x1F j או J לציון החלק המרוכב: 3+4j, j, 9J רושמים True או.False דוגמאות בהמשך, בסעיף שאילתות. לא להתבלבל משתנים שלמים רגילים בפייתון שקולים למשתנים שלמים מטיפוס long של C. בנוסף לכך, יש בפייתון משתנים שלמים בעלי אורך בלתי מוגבל )פרט למגבלה של כמות הזיכרון הפנוי במחשב( המכונים.Long Integer פייתון מבצע פעולות חשבון על פי סדר פעולות כצפוי. שאלה 1 הפעילו פייתון באופן אינטראקטיבי, ובצעו את החישובים להלן. שרטטו טבלא ורשמו לכל חישוב )1( את הביטוי שכתבתם, שימו לב שלעתים אתם נדרשים לסוג משתנה ולסוג הצבה מסויימים, )1( את התוצאה שחישב המחשב, )3( ואת הטיפוס של התוצאה. 1. שלוש וחצי )נקודה צפה( ועוד ארבע )שלם( )אוקטאלי( ועוד )הקסדצימאלי( )תשע תשיעיות( כפול עשר. (1+2j) * j * 2.5 מחרוזות טיפוס המחרוזת מאכסן רצף של תווים. מחרוזת מוקפת ב-' או ב-", על פי בחירתכם. ניתן לרשום מחרוזת בת מספר שורות בין שלישיית גרשיים """ לעוד שלישיית גרשיים. במקרה זה, מעבר שורה נשמר למחרוזת. ניתן להציב מחרוזות לתוך משתנים בעזרת =. מחרוזות מכילות תווים רגילים, כמו גם escape codes דוגמת n\ לסוף שורה ו- t \ לטאב. ניתן להדפיס מחרוזות בעזרת הפונקציה המובנית.print המחרוזות מודפסות כאשר ה- codes escape מתורגמים. בהפעלה אינטראקטיבית, ניתן לרשום את המחרוזת בשורת הפקודה, אז היא מודפסת כמו בקוד, בין ' וללא תרגום של ה- codes.escape

12 12 / 27 המעבדה למערכות תוכנה מרושתות >>> S = "Hello\nWorld" >>> S 'Hello\nWorld' >>> print S Hello World הפונקציה המובנית len מחזירה את אורכה של מחרוזת. היא מחזירה גם את אורכן של רשימות ושל tuples עליהן נלמד בהמשך. ניתן לקבל קטע מחרוזת על ידי רישום טווח אינדקסים בתוך סוגריים מרובעים. מספר יחיד בסוגריים מרובעים מחזיר את התו בעל אינדקס זה. מספרו של התו הראשון 1. טווח תוים מופרד על ידי :, למשל S[x:y] מחזיר תת מחרוזת של S, מאינדקס x ועד אינדקס y, לא כולל את y. אם x או y לא נכתבים, מוחזרת המחרוזת מההתחלה או עד הסוף, בהתאמה. >>> S = 'grail' >>> S[2] 'a' >>> S[1:] 'rail' >>> len(s) 5 >>> S[2:5] 'ail' >>> S1 = 'Holy' >>> S2 = ' Grail' >>> S3 = S1 + S2 >>> print S3 Holy Grail ניתן לשרשר מחרוזות באמצעות +: טיפוס המחרוזת בפייתון אינו בר שינוי )הוא,)immutable כלומר לא ניתן לשנות מחרוזת, למרות שניתן כמובן להציב במשתנה ערך חדש. זה לא יעבוד: >>> S = "grail" >>> S[4] = "n" תקלה! >>> S = "grail" >>> S = S[0:4] + "n" >>> print S זה כן, כי אנחנו מציבים אובייקט מחרוזת חדש לתוך השם S: שאלה 1: מה השגיאה המתקבלת במקרה הקודם בו ניסינו לשנות את המחרוזת? 1. מה התוצאה שידפיס print בדוגמא האחרונה? 1. מה קורה אם רושמים מספר שלילי בטווח? בידקו. 3.

13 13 / 27 המעבדה למערכות תוכנה מרושתות str.format() כדי לשלב טיפוסי נתונים ומשתנים בתוך מחרוזת ניתן להשתמש במתודה format של המחלקה.String שימו לב שבדוגמאות להלן אנחנו משתמשים במתודות של מחלקת String ישירות מתוך מחרוזת: >>> print "{0} Sir {1}".format("Brave", "Robin") Brave Sir Robin >>> print "{1} Sir {0}".format("Robin", "Brave") Brave Sir Robin >>> print "{adj} Sir {name}".format(adj="brave", name="robin") Brave Sir Robin >>> print "{four} shalt thou not count, neither count thou {two}, excepting that thou then proceed to {three:.3f}.".format(four=0x4, three=3.0, two=02) 4 shalt thou not count, neither count thou 2, excepting that thou then proceed to עד לאחרונה, פירמוט מחרוזות נעשה באופן דומה ל- printf של C בעזרת האופרטור % כדלקמן: >>> print "%s Sir %s" % ("Brave", "Robin") Brave Sir Robin סינטקס זה צפוי לעבור מן העולם, אך אתם עשויים לפגוש בו בינתיים בתוכניות פייתון ישנות. קבלת קלט מהמשתמש על מנת לקבל קלט מהמשתמש במהלך ריצת פייתון לתוך מחרוזת, ניתן להשתמש בפונקציה המובנית.raw_input בדקו באינטרנט כיצד משתמשים בפונקציה הזאת תזדקקו לה בשעת הניסוי. רשימות רשימות )Lists( הן טיפוס המחזיק אוסף אובייקטים אליהם ניתן להגיע לפי אינדקס. האובייקטים ברשימה יכולים להיות מכל טיפוס, בפרט ניתן להחזיק באותה מחרוזת אובייקטים מטיפוסים שונים, כולל רשימות. כמו במחרוזות, ניתן לצרף רשימות בעזרת +, לבדוק את אורכן בעזרת,len ולקבל תת רשימה על ידי רישום טווח בתוך סוגריים מרובעים. רשימה מוגדרת על ידי רישום אוסף אובייקטים מופרדים בפסיקים בתוך סוגריים מרובעים. >>> count = [1, 2, 3, "O'Clock"] >>> count [1, 2, 3, "O'Clock"] >>> len(count) 4 >>> count[2:] [3, "O'Clock"] >>> count + [4, "O'Clock"] [1, 2, 3, "O'Clock", 4, "O'Clock"]

14 14 / 27 המעבדה למערכות תוכנה מרושתות ניתן לשנות את האובייקטים שברשימה באופן דינאמי רשימה היא,mutable בניגוד למחרוזות. >>> count [1, 2, 3, "O'Clock"] >>> count[0] = 2 >>> count [2, 2, 3, "O'Clock"] >>> count[1:] = [4, 6, 16] >>> count [2, 4, 6, 16] ניתן גם לשנות את אורכה של רשימה באופן דינאמי. לשם כך מפעילים מתודות של רשימות. להפעלת מתודה, מוסיפים נקודה אחרי שם הרשימה ורושמים את שם המתודה. בדוגמא להלן, המתודה append מוסיפה איבר בסוף הרשימה, והפקודה pop שולפת איבר מהרשימה: שימו לב שאלה 3 >>> count = [1, 2, 3, "O'Clock"] >>> count.append(4) >>> count [1, 2, 3, "O'Clock", 4] >>> count.pop(2) 3 >>> count [1, 2, "O'Clock", 4] למרות שגודלן של רשימות הוא דינאמי, לא ניתן לשלוף או להציב מחוץ לתחומי הרשימה. זה לא יעבוד: >>> count [1, 2, "O'Clock", 4] >>> count[5] = 9 תקלה! מה השגיאה המתקבלת בדוגמא האחרונה? >>> count = [[1, 2, 3], "O'Clock"] >>> count [[1, 2, 3], "O'Clock"] >>> count[0] [1, 2, 3] >>> count[0][1] 2 כאמור, רשימות יכולות להכיל תת רשימות. לדוגמא: שאלה 7 רשמו סדרת פקודות כדלקמן: )1( הצבת מטריצה 3x3 בעלת הערכים 1-1 במשתנה M; )1( הצגת המטריצה; )3( החלפת האיבר האמצעי במלה ;"Robin" )7( הצגת התוצאה.

15 15 / 27 המעבדה למערכות תוכנה מרושתות למחלקה מחרוזת מתודה split המחלקת את המחרוזת לחלקים. המתודה מחלקת את המחרוזת לפי רווחים ומחזירה את התשובה ברשימה. המתודה יכולה לקבל כפרמטר מחרוזת אחרת לפיה תבצע את החלוקה במקום רווח: >>> "a;b c;d".split() ['a;b', 'c;d'] >>> "a;b c;d".split(';') ['a', 'b c', 'd'] למחלקה מחרוזת מתודה המאפשרת לשרשר רשימת מחרוזות למחרוזת אחת כאשר המחרוזת עבורה מופעל ה- join מפרידה בין אברי הרשימה: >>> "--".join(["one", "two", "three", "four"]) 'one--two--three four' מילונים מילון הוא מערך אסוציאטיבי, כלומר מיפוי ממפתחות לערכים. השימוש במילון דומה לשימוש ברשימה, אך הגישה לאובייקטים היא על פי המפתח שלהם ולא על פי אינדקס. מילון מוגדר על ידי רישום בסוגריים מסולסלים של זוגות אובייקטים )מפתח וערך( מופרדים בנקודתיים, כאשר בין כל שני זוגות מפריד פסיק: >>> car = {'Year' : 2005, 'Maker' : 'Skoda', 'Model' : 'Fabia'} >>> car['year'] 2005 >>> car['model'] 'Fabia' >>> car['year'] += 1 >>> car['year'] 2006 ניתן להוסיף מפתחות וערכים למילון באופן ישיר על ידי הצבה: שאלה 5 >>> car {'Model': 'Fabia', 'Maker': 'Skoda', 'Year': 2006} >>> car['color'] = 'Gray' >>> car {'Color': 'Gray', 'Model': 'Fabia', 'Maker': 'Skoda', 'Year': 2006} בנו רשימה המכילה שני מילונים, כל אחד בעבור מכונית אחרת, עם השדות הנ"ל. ניתן לקבל את רשימת המפתחות במילון באמצעות המתודה :keys >>> car.keys() ['Color', 'Model', 'Maker', 'Year']

16 16 / 27 המעבדה למערכות תוכנה מרושתות )Tuples( N -יות N -יה דומה לרשימה, אך אינה ניתנת לשינוי.)immutable( היא יכולה להיות מוקפת בסוגריים רגילים )ולא מרובעים כמו רשימה(, או ללא סוגריים: שאלה 6 מה השגיאה המתקבלת בדוגמא האחרונה? ניתן להציב למספר משתנים בו זמנית בעזרת N -יות: >>> count = (1, 2, 3, "O'Clock") >>> count (1, 2, 3, "O'Clock") >>> len(count) 4 >>> count + (4, "O'Clock") (1, 2, 3, "O'Clock", 4, "O'Clock") >>> count[2] = 5 תקלה! >>> x, y, z = 1, 2, 3 >>> print "{X} + {Y} + {Z} = {sum}".format(x=x, Y=y, Z=z, sum=x+y+z) פונקציה יכולה להחזיר N -יה כדי להחזיר מספר ערכים. תנאים ולולאות תנאים if <test1>: <statements1> elif <test2>: <statements2> elif <test3>: <statements3> else: <statement4> רגיל המבנה של שאילתה: התנאים test1-3 statement בנויים כמו ב- C, וה- statements1-4 הם אוסף שורות לביצוע. שים לב שהכפיפות של שורות לתנאי שלפניהן מבוטאת על ידי הזחה.

17 17 / 27 המעבדה למערכות תוכנה מרושתות x = 15 if x < 0: print "x is negative." elif x < 10: print "x is a small number." elif x < 20: print "mmm..." print "Maybe x is not so small." else: print "x is large!" דוגמא: שאלה 7 מה תדפיס התוכנית הנ"ל? ומה אם נציב בשורה הראשונה 111 במקום 15? תנאים )מה שכינינו קודם )test הם למעשה הערכים,true/false כאשר אפס נחשב false וכל מספר אחר.true גם משתנים )לא ריקים( נחשבים.true ניתן לצרף מספר תנאים בעזרת אופרטורים:.true הם b וגם a אם"ם גם true מחזיר a and b.false הם b וגם a אם"ם גם false מחזיר a or b.false הוא a אם"ם true מחזיר not a ניתן להשוות מספרים בעזרת אי שוויונים, כך 5>3 יחזיר true ואילו 3==5 יחזיר.false באופן דומה ניתן להשוות גם מחרוזות )לפי סדר א"ב(, ולמעשה כל זוג אובייקטים עליהם מוגדר סדר. A = Y if X else Z if X: A = Y else: A = Z ביטוי השאילתה המשולש קיימת דרך נוספת לכתוב שאילתות באופן מוטמע בהצבה. הביטוי שקול לקוד הבא: לולאות while <test>: <statements1> else: <statements2> <more code> while לולאת while נראית כך: הפקודות statements1 מבוצעות בלולאה כל עוד תנאי test הוא אמת. עד כאן כמו C. הלולאה יכולה להישבר בשתי דרכים: אם כאשר הלולאה מגיעה לשורת ה- while, התנאי test הינו,false מבוצעות שורות,statements2 ואחר כך שורות.more code אם לעומת זאת בתוך statements1 ישנה פקודת.more code הלולאה מפסיקה ומדלגים ישירות אל,break

18 18 / 27 המעבדה למערכות תוכנה מרושתות x = range(7) while x: # While x is not empty if x[0] > 4: break x = x[1:] else: print "All values are not greater than 4." print "Done." דוגמא: שאלה 8 כמה שאלות: מה מדפיסה התוכנית הנ"ל? 1. מה מדפיסה התוכנית אם בשורה הראשונה נחליף את 7 ב- 7? 1. מה מדפיסה התוכנית אם בשורה הראשונה נחליף את 7 ב- 5? 3. מה עושה הפונקציה?range 7. for <target> in <object>: <statements1> else: <statements2> for for לולאת נראית כך: הפקודות statements1 מבוצעות בלולאה, כאשר בכל סיבוב, target מקבל ערך אחר. הערכים של נקבעים על ידי.object למשל, אם object הוא רשימה, אז target יקבל את ערכי הרשימה בזה אחר זה: שאלה 1 מה מדפיסה התוכנית לעיל? target for x in [1, 2, 3, 4, 5, 6, 7]: if x%2 == 0: print x, " is even." else: print x, " is odd." כמו ב- while, הפקודות שב- else יבוצעו אם הלולאה הסתיימה בשלום ולא הופסקה על ידי.break List Comprehension שפת פייתון מאפשרת לטפל ברשימות איברים אחד-אחד באמצעות.List Comprehension כלי זה מורה לפייתון לבצע פעולה כלשהי על כל איבר ברשימה. התוצאה היא רשימה ובה התוצאות של הפעולה על כל אחד מאברי הרשימה המקורית. בקוד להלן משתמשים בלולאת for כדי לטפל בכל אחד מאברי הרשימה L: L = [1, 2, 3, 4, 5] newl = [None, None, None, None, None] for i in range(len(l)): newl[i] *= 2

19 19 / 27 המעבדה למערכות תוכנה מרושתות שימוש ב- comprehension list נותן אותה תוצאה: >>> L = [1, 2, 3, 4, 5] >>> newl = [x * 2 for x in L] # List Comprehension >>> print newl [2, 4, 6, 8, 10] למעשה מצד ימין של השוויון )בשורה השנייה( נוצרת רשימה חדשה אשר מוצבת ל- newl. כל איבר ברשימה החדשה נוצר על פי איבר מהרשימה L על ידי הכפלתו פי 1. List Filtering ניתן להשתמש במנגנון זה כדי לסנן אברי רשימה על ידי הוספת שאילתה כדלקמן: >>> L = [1, 2, 3, 4, 5] >>> newl = [x - 3 for x in L if x >= 3] [0, 1, 2] קבצים פתיחה, קריאה וכתיבה לפתיחת קובץ משתמשים בפונקציה המובנית open אשר מקבלת את שם הקובץ ואת אופן הגישה )קריאה/כתיבה( ומחזירה אובייקט לגישה לקובץ. לסגירת קובץ משתמשים במתודה close שלו: f = open("filename", "r") f = open("filename") f = open("filename", "w") f.close() פתיחת קובץ לקריאה: קריאה היא ברירת המחדל, אם לא כותבים "r" או "w": פתיחת קובץ לכתיבה: סגירת קובץ: ארבע מתודות שימושיות לקריאת קובץ: bigstring = f.read() smallstring = f.read(n) line = f.readline() lines = f.readlines() קריאת כל הקובץ למחרוזת יחידה: קריאת N בתים למחרוזת: קריאת שורה אחת: קריאת השורות לרשימת מחרוזות: ולכתיבת לקובץ: f.write(astring) f.writelines(alist) First line! Line 2. Line number three. כתיבת מחרוזת יחידה: כתיבת רשימת מחרוזות: כדוגמא, נניח שקיים הקובץ stam.txt הבא:

20 20 / 27 המעבדה למערכות תוכנה מרושתות >>> txt = open("stam.txt") >>> toprint = txt.read() >>> print(toprint) First line! Line 2. Line number three. >>> txt = open("stam.txt") >>> lines = txt.readlines() >>> lines = [line.upper() for line in lines] >>> txt.close() >>> txt = open("upstam.txt", "w") >>> txt.writelines(lines) >>> txt.close() התוכנית הבאה מציגה אותו על המסך: התבוננו בפקודות הבאות: שאלה 11 הסבירו מה עושה כל שורה בתוכנית הנ"ל. מה מכיל הקובץ upstam.txt תכנות פונקציונאלי עם סיום ריצתה? לפייתון מספר כלים המקבלים השראה מפרדיגמת התכנות הפונקציונאלי. כאלה הם שלוש הפונקציות הבאות לטיפול ברשימות. כולן מקבלות כפרמטרים פונקציה ורשימה והן מפעילות את הפונקציה על כל אברי הרשימה בזה אחר זה. עבור שתי הפונקציות הראשונות הפונקציה בפרמטר מקבלת פרמטר יחיד. הפונקציה filter מחזירה את רשימת האיברים עבורם הפונקציה מחזירה ערך אמת. הפונקציה map מחזירה את רשימת התוצאות שמחזירה הפונקציה. עבור הפונקציה,reduce הפונקציה בפרמטר צריכה לקבל שני פרמטרים. reduce מפעילה את הפונקציה על האיבר הראשון והשני, אחר כך את מפעילה אותה שוב על התוצאה ועל האיבר השלישי; אחר כך על התוצאה החדשה והאיבר הרביעי וחוזר חלילה. היא מחזירה את התוצאה. lambda x: x * 2 פייתון מאפשר להגדיר פונקציה ללא שם בעזרת המבנה למבדה. פונקציה כזאת נכתבת כך: כמובן שאין טעם לכתוב שורה כזאת, כיוון שלא ניתן לקרוא לפונקציה בלי שם. אפשר לתת לפונקציה שם ואז לקרוא לה )כמו פונקציה רגילה(: >>> mult = lambda x: x * 2 >>> mult(5) 10 חזרה לפונקציות המטפלות ברשימות. בדוגמאות להלן נשתמש בלמבדה במקום להכריז על פונקציות מראש. >>> filter(lambda x: True if x>5 else None, [2, 4, 6, 8, 10]) [6, 8, 10] >>> map(lambda x: x if x>5 else 5+x, [2, 4, 6, 8, 10]) [7, 9, 6, 8, 10] >>> reduce(lambda x, y: x+y, [2, 4, 6, 8, 10]) 30

21 21 / 27 המעבדה למערכות תוכנה מרושתות ביטויים רגולריים מבוא ביטויים רגולריים expressions( regexp,regular או בקיצור( הם מחרוזות המתארות טקסט. לכל ביטוי רגולרי RE ולכל טקסט ניתן לקבוע האם הטקסט מתאים ל- RE. regex דוגמא טריוויאלית הביטוי הרגולרי three מתאר את המחרוזת "three" ורק אותה. ביטויים רגולריים משמשים למשל לחיפוש טקסט. בטקסט הבא מסומנות כל התת מחרוזות המתוארות על ידי :three And the Lord spake, saying, "First shalt thou take out the Holy Pin. Then shalt thou count to three, no more, no less. Three shall be the number thou shalt count, and the number of the counting shall be three. Four shalt thou not count, neither count thou two, excepting that thou then proceed to three. Five is right out. Once the number three, being the third number, be reached, then lobbest thou thy Holy Hand Grenade of Antioch towards thy foe, who, being naughty in my sight, shall snuff it. ביטוי רגולרי יחיד יכול לתאר גם מחרוזות שונות. למשל, הביטוי [tt]hree מתאר את המחרוזת "three" וגם את המחרוזת "Three" אוסף תווים בין סוגריים מרובעים משמעו "אחד מבין התווים הללו". בין סוגריים מרובעים ניתן גם לרשום תחומי תווים, כך ש-[ a-z ] משמעו אחת האותיות מ- a עד z. הביטוי t[a-z][a-z][a-z] יתאים לכל המחרוזות שמתחילות באות t ואחריה 3 אותיות כלשהן. בטקסט הנ"ל: And the Lord spake, saying, "First shalt thou take out the Holy Pin. Then shalt thou count to three, no more, no less. Three shall be the number thou shalt count, and the number of the counting shall be three. Four shalt thou not count, neither count thou two, excepting that thou then proceed to three. Five is right out. Once the number three, being the third number, be reached, then lobbest thou thy Holy Hand Grenade of Antioch towards thy foe, who, being naughty in my sight, shall snuff it. תווים הרכיב הקטן ביותר של ביטוי רגולרי הוא תו יחיד. מדובר בתווי הא"ב האנגלי )גדולות וקטנות(, מספרים ותווים אחרים דוגמת >, > ו-&. ואולם, לתווים מסויימים יש שימושים מיוחדים בפייתון כפי שנראה בהמשך. כדי לחפש תווים אלה בביטוי רגולרי, יש להקדים להם \ המסמן שהכוונה לתו עצמו ולא לשימוש המיוחד שלו. סוגר מרובע שמאלי וגם ' ' שהוצגו במבוא הם דוגמא לכך. הביטוי t\[a\-z] יתאים לטקסט t[a-z] )ורק לו(. אחד עשר התווים המיוחדים הדורשים \ לפניהם: [ \ ^ $.? * + ( ) ישנם תווים אשר אינם בני הדפסה אשר גם הם נרשמים בעזרת \ לפניהם. שלושה שימושיים במיוחד הם: \t Tab \r Carriage return \n Line feed שימו לב שביוניקס )ובלינוקס( שורה מסתיימת ב- n \ ואילו בחלונות שורה מסתיימת ב- r\n \. לחובבי שפות שאינן אנגלית, ניתן לרשום תווי יוניקוד כך:.\uFFFF למשל התו א' בעל יוניקוד 0x05D0 ירשם.\u05D0

22 22 / 27 המעבדה למערכות תוכנה מרושתות קבוצות תווים קבוצות התווים כבר הוצגו במבוא של פרק זה. קבוצות תווים מסומנות בין סוגריים מרובעים. במקום בו רשומה קבוצת תווים יכול להתאים כל אחד מהתווים בקבוצה. לא נחזור כאן על הדוגמא מהמבוא. בין הסוגריים המרובעים של קבוצת תווים, התווים המיוחדים אינם התווים המיוחדים הרגילים )ראו לעיל( אלא הארבעה הבאים: ] \ ^ - ניתן להשתמש בקבוצת תווים לשלילה בעזרת הסימן ^ אחרי הסוגר המרובע השמאלי. הביטוי שאינו x". הביטוי x[^y]z יתאים למחרוזות xaz ו- xbz אך לא ל- xyz. [^x] משמעו "תו למספר קבוצות תווים סימונים מקוצרים ואלה הן: תיאור סימון ספרה \d תו אלפאנומרי \w תו רווח רווח, טאב ומעבר שורה \s כל תו פרט לסוף שורה. רישום מלא [0-9] [A-Za-z0-9_] [ \t\r\n] [^\r\n] שימוש באות גדולה במקום קטנה משמעו שלילת הקבוצה, למשל \D משמעו כל תו שאינו ספרה. ניתן להשתמש בסימון מקוצר כזה בפני עצמו, או בתוך סוגריים מרובעים, כלומר \d\d משמעו שתי ספרות ברצף, ו-[ da-f \] משמעו ספרה או אחת האותיות A-F )כלומר ספרה הקסדצימאלית אחת(. עוגנים מתארים את המיקום שבין תווים. עוגנים הסימן b\ מסמן גבול מלה לפני תחילתה או אחרי סופה. אם המלה היא בתחילת מחרוזת, יקדם לה b\ מחרוזת יהיה אחריה b\. בתוך מחרוזת, ה- b \ נמצא בין המלה לבין הרווחים שלפני ואחריה. הסימן B\ הוא השלילה של b\, כלומר הוא מתאים בכל מקום בו b\ לא מתאים. לדוגמא, נתבונן במחרוזת הבאה: This is an island ואם היא בסוף is \bis\b \Bis is\b בטבלא הבאה רשומים ביטויים רגולריים שונים ותת המחרוזות להן הם מתאימים במחרוזת: This is an island This is an island This is an island This is an island שאלה 11 איזה תת מחרוזות מתאימות לביטויים הבאים עבור המחרוזת הנ"ל: )רשמו טבלא כמו הטבלא לעיל( an.1 \ban.1 \Ban.3

23 23 / 27 המעבדה למערכות תוכנה מרושתות הסימנים ^ ו-$ )שלא בתוך סוגריים מרובעים של קבוצת תווים( מסמנים את תחילתה ואת סופה של המחרוזת בהתאמה. הביטוי x^ יתאים רק ל- x שבתחילת המחרוזת והביטוי $x יתאים רק ל- x שבסוף המחרוזת. היררכיית ביטויים רגולריים כל ביטוי רגולרי מורכב באופן היררכי מתת-ביטויים רגולריים. ביטוי רגולרי מכיל רצף ביטויים רגולריים והוא מתאים למחרוזת כאשר הביטויים מתאימים בזה אחר זה. כל תו הינו ביטוי רגולרי וביטוי רגולרי בן מספר תוים מורכב מביטויים רגולריים בני תו יחיד. אופרטורים מיוחדים מרחיבים את הכוח של ההיררכיה. כדוגמא ראשונה, נתבונן באופרטור, שמשמעו "או", כלומר או הביטוי הרגולרי שמשמאלו, או הביטוי הרוגלרי שמימינו. דוגמא: th. \b..th cut down the mightiest tree in the forest with... a herring the mightiest the forest the (mightiest forest) ניתן לעטוף תת ביטוי רגולרי בסוגריים. דוגמא: cut down the mightiest tree in the forest with... a herring cut down the mightiest tree in the forest with... a herring חזרות האופרטורים הבאים משמעם חזרה מספר מוגדר של פעמים על הביטוי הרגולרי שלפניהם. שימו לב שכל תו הוא ביטוי רגולרי, לכן יש להקפיד להקיף בסוגריים את כל הביטוי שרוצים שיחזור. אופרטור מספר חזרות? 0-1 ביטוי אופציונאלי * -0 מספר כלשהו של חזרות )אולי אפס( + -1 לפחות חזרה אחת {m,m} m-m {m,} m- {,M} 0-M [1-9]\d* [1-9]\d{3} \b\d{1,8}-\d\b דוגמאות: מספר שלם )ללא אפס בהתחלה( מספר שלם 7 ספרתי מספר זהות עם ספרת ביקורת מופרדת על ידי מקף האופרטורים של חזרה הינם,greedy כלומר הביטוי המתאים הוא זה עם המספר המקסימאלי של חזרות. דוגמא נרצה לזהות ביטויים המוקפים סוגריים: \(.+\) 0*(1+2)*(3+4) אך במקום זאת נקבל את כל הביטוי המודגש, כיוון שה-+ ניסה למצוא כמה שיותר חזרות לפני ה-). הפתרון הפיכת החזרה ל- lazy, כך שהחזרה תנסה להתאים למספר המינימאלי של פעמים. עושים זאת על ידי הוספת? אחרי אופרטור החזרה )זה עובד גם על *, }{ ו-?(. עם הדוגמא הקודמת: \(.+?\) 0*(1+2)*(3+4)

24 24 / 27 המעבדה למערכות תוכנה מרושתות שאלה 11 רשמו ביטויים רגולריים למציאת המחרוזות הבאות: 1. מספר טלפון עם או בלי קידומת, כאשר מקף מפריד בין הקידומת לטלפון, וללא מקפים נוספים, כלומר או כתובת אינטרנט )URL( המתחילה ב-//: http, ואחריו שניים או יותר שמות מופרדים בנקודות, כאשר כל שם מורכב מאותיות abc בלבד. כן: כן: לא: לא: לא: name1.name2.name3 רפרנס לביטוי קודם בקובצי html התגים <b/> <b> משמשים לסימון טקסט אשר ייראה מודגש.)bold( תג דומה עם התו u במקום ה- b מסמן טקסט עם קו תחתי. דוגמא: הטקטס הבא: cut down <u>the mightiest tree <b>in the forest</b></u> with... <u>a herring</u> ייראה בדפדפן אינטרנט כך: cut down the mightiest tree in the forest with... a herring כעת נרצה לרשום ביטוי רגולרי אשר יימצא ביטויים המוקפים בתגים. לשם כך, עלינו לחפש תחילה תג פותח ואחריו תג סוגר. ניסוי ראשון ולא מוצלח: <\w>.+</\w> cut down <u>the mightiest tree <b>in the forest</b></u> with... <u>a</u> <b>herring</b> תוצאה לא טובה קיבלנו ביטוי שמתחיל ב-< u > ונגמר ב-< b />. עלינו לדרוש שהאות בתג הסוגר תהיה אותה אות של התג הפותח. לשם כך נשתמש ב- reference.backward כבר ראינו בפרק על היררכיית הביטויים הרגולריים כי ניתן להקיף תת ביטוי רגולרי בסוגריים. תת ביטויים המוקפים סוגריים ממוספרים באופן אוטומטי,2,1. ניתן לרשום x\ כדי לדרוש מופע נוסף של ביטוי אשר התאים לסוגריים מספר x. לפיכך הביטוי הדרוש לנו עבור המקרה הנ"ל אמור להיות: <(\w)>.+</\1> cut down <u>the mightiest tree <b>in the forest</b></u> with... <u>a</u> <b>herring</b> אולם גם הוא אינו מתאים. בתרגיל להלן תפתרו את הבעיה.

25 25 / 27 המעבדה למערכות תוכנה מרושתות שאלה 13.1 השתמשו בכלים שבידכם כעת כדי לרשום את הביטוי הנכון למציאת טקסט המוקף בתגים מתאימים. עבור הדוגמא לעיל התוצאה אמורה להיות )3 התאמות, כל אחת מסומנת בקו תחתי(: cut down <u>the mightiest tree <b>in the forest</b></u> with... <u>a</u> <b>herring</b>.1 בידנו מסד נתונים עם רשומות שקריות. נרצה לנצל את הידע החדש שלנו בביטויים רגולריים כדי לזהות רשומות חשודות רשמו ביטוי לזיהוי כתובת אימייל בה המחרוזות לפני ואחרי הכרוכית )שטרודל( זהות רשמו ביטוי לזיהוי שם מלא )ראשון + שני + משפחה( ששלושת חלקיו זהים רשמו ביטוי לזיהוי שם מלא )ראשון + שני + משפחה( בו שם המשפחה זהה לשם הראשון או לשני. ביטויים רגולריים בפייתון כדי להשתמש בביטויים רגולריים בפייתון עלינו לייבא את המודול re בעזרת הפקודה.import re כאן נתמקד בשתי מתודות בלבד findall המוצאת ביטוי, ו- sub המחליפה ביטויים במחרוזת. נלמד גם שני טריקים שקצת יקלו עלינו את החיים. מחרוזות גולמיות ראשית נציין כלי המקל במעט על קריאת ביטויים רגולריים בפייתון מחרוזות גולמיות.)raw( בעת הצבה למחרוזת, פייתון מתרגם באופן אוטומטי.escape codes כך t\ הופך לטאב, n\ לשורה חדשה ו-\\ ל-\. פייתון מאפשר )באופן כללי, בלי קשר לביטויים רגולריים( להציב ערך למחרוזת ללא התרגום הזה. כדי לסמן לפייתון לעשות זאת, יש להקדים r למחרוזת כך: pattern = r'\bword\b' במקום '\\bword\\b'.pattern = חיפוש ביטויים המתודה text) re.findall(pattern, מחפשת את כל ההתאמות של הביטוי הרגולרי pattern בטקסט text ומחזירה אותן כרשימת מחרוזות. אם הביטוי מכיל קבוצות )מוקפות בסוגריים(, מוחזרת רשימה אשר כל איבר שלה הוא.tuple החלפת ביטויים המתודה >>> print re.findall(r'(\d+)\d+(\d+)', "12a3 bc 3de4") [('12', '3'), ('3', '4')] re.sub(search, replace, text) במחרוזת.replace אם המחרוזת replace מכילה הביטוי. רישום מפורט של ביטויים רגולריים מחפשת בטקסט text התאמות לביטוי search ומחליפה אותן escape codes מהסוג x\, הם מוחלפים בהתאמה ה- x של >>> re.sub(r'(\d*)(\d+)(\d*)(\d+)', r'\1\2\3\2', "ab 12 cd 34") 'ab 12 cd 12' לא קל לרשום ביטויים רגולריים, אך הרבה יותר קשר לקרוא אותם. כדי להקל על שני הקשיים, ניתן לרשום ביטוי רגולרי באופן מפורט תוך שילוב הערות. לדוגמא, הביטוי הבא משמש לזיהוי מספרי טלפון ישראלים: ^((972-?) 0)\d{1,2}(-?\d){7}$

26 26 / 27 המעבדה למערכות תוכנה מרושתות נרשום אותו כביטוי מלא כך: pattern = """ ^ # Line start ((972-?) 0) # Either 972 (maybe with -) or 0 \d{1,2} # Area code 1-2 digits (e.g. 2 or 54) (-?\d){7} # 7 digits, maybe with some 's $ # Line end """ כאשר רושמים ביטוי רגולרי באופן כזה, יש להורות לפייתון להתעלם מטאבים, מעברי שורה, רווחים והערות. יש להעזר ב- codes escape אם רוצים לכלול רווחים בביטוי. כדי שפייתון ידע שהביטוי במשתנה pattern של פונקציות re הוא ביטוי מלא, יש להציב את הדגל re.verbose כפרמטר אחרון כך: >>> re.search(pattern, ' ', re.verbose)

27 27 / 27 המעבדה למערכות תוכנה מרושתות ביבליוגרפיה האתר הרשמי. הורדת התוכנה, קישורים ופרסומות. pydev.org, סביבת העבודה אקליפס והתוסף פיידב לתכנות פייתון. הורדות והוראות. docs.python.org מדריכים, רפרנסים וכיו"ב. מקיף ביותר. Mark Lutz, Learning Python, Oreilly, 2009 פייתון כשפה ראשונה. מדריך פייתון מהיר, מעט מעמיק יותר מחוברת זו. מומלץ. קורס ביטויים רגולריים. מומלץ. כלי וובי לבדיקת ביטויים רגולריים. תמונת השער

ASP.Net MVC + Entity Framework Code First.

ASP.Net MVC + Entity Framework Code First. ASP.Net MVC + Entity Framework Code First 1 הקדמה בפרק הזה יוצג שימוש בFirst EntityFramework Code עבור ה use case הבאים : ASP.Net MVC ASP.Net Web API ASP.Net MVC + Scaffolding הערה : Framework Entity הוצג

More information

מבוא למחשב בשפת פייתון

מבוא למחשב בשפת פייתון 234221 מבוא למחשב בשפת פייתון 3 מבני בקרה ולולאות פרופ' ראובן בר-יהודה דין לייטרסדורף הפקולטה למדעי המחשב הטכניון מכון טכנולוגי לישראל נערך ע"י יעל ארז 1 פקודות והזחות 2 פקודה פשוטה >>> 3+2 5 >>> x = 5

More information

תצוגת LCD חיבור התצוגה לבקר. (Liquid Crystal Display) המערכת.

תצוגת LCD חיבור התצוגה לבקר. (Liquid Crystal Display) המערכת. 1 (Liquid Crystal Display) תצוגת LCD בפרויקט ישנה אפשרות לראות את כל הנתונים על גבי תצוגת ה- LCD באופן ברור ונוח. תצוגה זו היא בעלת 2 שורות של מידע בעלות 16 תווים כל אחת. המשתמש יכול לראות על גבי ה- LCD

More information

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 כל מה שמעצב משחקים צריך לדעת בשביל לעבוד עם מתכנתים משחק בול פגיעה שעור 2 1P 0 AS3 2P 0 HIGH SCORE RANK SCORE NAME CREDIT 15 1ST 00045000 I.M 2ND 00039500

More information

מבוא לתכנות ב- JAVA תרגול 7

מבוא לתכנות ב- JAVA תרגול 7 מבוא לתכנות ב- JAVA תרגול 7 שאלה )מועד א 2013( לפניך מספר הגדרות: תת מילה של המילה word הינה רצף של אותיות עוקבות של word פלינדרום באורך le היא מילה בעלת le אותיות שניתן לקרוא אותה משמאל לימין וגם מימין

More information

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 כל מה שמעצב משחקים צריך לדעת בשביל לעבוד עם מתכנתים משחק טקסט שעור 3 1P 0 AS3 2P 0 HIGH SCORE RANK SCORE NAME CREDI 15 1S 00079000 G. 2ND 00079000 S.G 3RD

More information

Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of

Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of the rule. (Choose three cards appropriate to the lesson

More information

ניפוי שגיאות )Debug( מאת ישראל אברמוביץ

ניפוי שגיאות )Debug( מאת ישראל אברמוביץ ניפוי שגיאות )Debug( מאת ישראל אברמוביץ בדף העבודה יש תירגול בסביבת העבודה לשפת #C לסביבות עבודה אחרות. )2015 )Visual Studio אך היא מתאימה גם לשפת Java וגם o 1. ריצה של כל התוכנית ועצירה בסוף יש לבחור

More information

המבנה הגאומטרי של מידה

המבנה הגאומטרי של מידה התוכנה מאפשרת לרשום מידות מסוגים שונים בסרטוט, במגוון סגנונות ובהתאם לתקנים המקובלים. רצוי לבצע מתן מידות בשכבה המיועדת לכך. לכל מידה יש תכונות של בלוק. תהליך מתן המידות מתחיל תמיד מקביעת סגנון המידות.

More information

טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי

טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי WPF-Windows Presentation Foundation Windows WPF טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי Client חכמים המשלב ממשקי משתמש,תקשורת ומסמכים. מטרת התרגיל : ביצוע אנימציה לאליפסה ברגע

More information

קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות.

קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות. סריקה לרוחב פרק 3 ב- Kleinberg/Tardos קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות. קשירות.s,t V שני צמתים,G=(V,E) קלט:

More information

עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא:

עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא: שאלה 1 עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא: 99 80 50 15 40 34 30 22 10 13 20 13 9 8 א. ב. ג. האם העץ

More information

בוחן בתכנות בשפת C בצלחה

בוחן בתכנות בשפת C בצלחה בוחן בתכנות בשפת C ) כתוב תכנית הקולטת ממשתמש מספרים שלמים ומדפיסה כמה מספרים היו גדולים מ-, כמה מספרים היו קטנים מ-, וכמה מספרים היו שווים ל-. 2) כתוב תכנית הקלטת עשרה מספרים טבעיים ומחשבת את הממוצע שלהם.

More information

דיאגרמה לתיאור Classes

דיאגרמה לתיאור Classes 1 דיאגרמה לתיאור Classes הקדמה לדיאגרמת Classes כללים במתן שמות ל- Classes שאנו מתארים הרשאות גישה של מרכיבי ה- Class השונים משתנים (Attributes) שמוגדרים ב- Class משתנים סטטיים Attributes) (Static מתודות

More information

המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית

המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית נושאים: מערכים, רשימות מרצה ומתרגלים אחראים: איתן בכמט, איסנה וקסלר, רז ניסים תאריך פרסום: 11.21 תאריך הגשה:

More information

Practical Session No. 13 Amortized Analysis, Union/Find

Practical Session No. 13 Amortized Analysis, Union/Find Practical Session No. 13 Amortized Analysis, Union/Find Amortized Analysis Refers to finding the average running time per operation, over a worst-case sequence of operations. Amortized analysis differs

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. קיץ תשע"ד, מועד ב, 2014 מועד הבחינה: מספר השאלון: 416 016117, Thinking Skills נספח: כישורי

More information

זו מערכת ישרת זוית )קרטזית( אשר בה יש לנו 2 צירים מאונכים זה לזה. באותו מישור ניתן להגדיר נקודה על ידי זוית ורדיוס וקטור

זו מערכת ישרת זוית )קרטזית( אשר בה יש לנו 2 צירים מאונכים זה לזה. באותו מישור ניתן להגדיר נקודה על ידי זוית ורדיוס וקטור קארדינטת קטבית y p p p במישר,y הגדרנ נקדה על ידי המרחקים מהצירים. ז מערכת ישרת זית )קרטזית( אשר בה יש לנ צירים מאנכים זה לזה. באת מישר ניתן להגדיר נקדה על ידי זית רדיס קטר. (, ) הרדיס קטר מסתבב )נגד כין

More information

מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת (MODULE F) ספרות )מילון הראפס אנגלי-אנגלי-ערבי(

מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת (MODULE F) ספרות )מילון הראפס אנגלי-אנגלי-ערבי( בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"א, 2011 מועד הבחינה: משרד החינוך 016117 מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת א. משך הבחינה: שעה וחצי שאלון

More information

Patents Basics. Yehuda Binder. (For copies contact:

Patents Basics. Yehuda Binder. (For copies contact: Patents Basics Yehuda Binder (For copies contact: elissa@openu.ac.il) 1 Intellectual Property Value 2 Intellectual Property Rights Trademarks Copyrights Trade Secrets Patents 3 Trademarks Identify a source

More information

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5 FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO. 652082/2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5 McLaughlin, Terence K. From: Sent: To: Cc: Subject: Follow Up Flag: Flag Status:

More information

ANNEXURE "E1-1" FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA)

ANNEXURE E1-1 FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA) ANNEXURE "E1-1" FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA) Dear Sirs, Re: Standby Letter of Credit No: Please advise the

More information

Structural Vs. Nominal Typing

Structural Vs. Nominal Typing שפות תכנות 234319 פרופ' יוסי גיל הפקולטה למדעי המחשב, הטכניון מכון טכנולוגי לישראל קיץ 2013 הרצאה מס' 6: טיפוסיות שמית ומבנית רשמה: איריס קלקה kalka.iris@gmail.com בשלב זה בקורס אנו עוסקים בתורת הטיפוסים.

More information

ל"תוכנה" שכותבים, כמו פונקציה זו, קוראים "קוד"

לתוכנה שכותבים, כמו פונקציה זו, קוראים קוד הגדרת פונקציות מבוא לתכנות מדעי וסטטיסטי R פונקציות, ו חלק 4 בנוסף לפונקציות שמגיעות מוכנות יחד עם המערכת exp) mean,,c וכו'), אפשר לכתוב פונקציות חדשות פונקציות נקראות לעתים "פרוצדורות" או "סאב-רוטינות"

More information

אנגלית ספרות בהצלחה! /המשך מעבר לדף/ נספח: כישורי חשיבה )לפרק ראשון ושני( או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

אנגלית ספרות בהצלחה! /המשך מעבר לדף/ נספח: כישורי חשיבה )לפרק ראשון ושני( או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. קיץ תשע"ד, מועד ב, 2014 מועד הבחינה: מספר השאלון: 414 016115, Thinking Skills נספח: כישורי

More information

ãówh,é ËÓÉÔê ÌW W É Å t" Y w f É ËÓÉÑ É èw É f Ñ u ð NNM YóQ' ÌW W É Y ÉgO d óqk É w f ym Éd É u ð NNM ÌWNQMH uqo ð NNM ÌWNQMH

ãówh,é ËÓÉÔê ÌW W É Å t Y w f É ËÓÉÑ É èw É f Ñ u ð NNM YóQ' ÌW W É Y ÉgO d óqk É w f ym Éd É u ð NNM ÌWNQMH uqo ð NNM ÌWNQMH * .1.2.3 (X).1.2.3.4.5.6 בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל חורף תשע"ג, 2013 מועד הבחינה: משרד החינוך מספר השאלון: 016117 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון

More information

Redirection The Input Buffer

Redirection The Input Buffer מבוא לשפת C תירגול 3: טיפוסים והמרות 1 מה היה שבוע שעבר? משתנים קלט/פלט scanf) ו- printf ) Redirection The Input Buffer 2 תוכנייה טיפוסי משתנים קלט/פלט מעוצב המרה בין טיפוסים 3 חישוב ממוצע בין שני מספרים

More information

מכונת מצבים סופית תרגול מס' 4. Moshe Malka & Ben lee Volk

מכונת מצבים סופית תרגול מס' 4. Moshe Malka & Ben lee Volk מכונת מצבים סופית תרגול מס' 4 1 מכונת מצבים סופית Finite State Machine (FSM) מודל למערכת ספרתית מכונת מצבים סופית: קלט: סדרה אינסופית של אותיות...,I3,I1,I2 בא"ב input out פלט: סדרה אינסופית של אותיות O

More information

שאלות חזרה לקראת מבחן מפמ"ר אינטרנט וסייבר

שאלות חזרה לקראת מבחן מפמר אינטרנט וסייבר שאלות חזרה לקראת מבחן מפמ"ר אינטרנט וסייבר שאלה.1 ייצוג מידע בטבלה שלפניכם מספרים בבסיס. כל מספר מיוצג ע"י 5 סיביות. 10011 = 01100 = 00111 = 11000 = 11010 = 00101 = 10000 = 01111 = ד. יש להשלים את הערך

More information

בהצלחה! (MODULE C) Hoffman, Y. (2014). The Universal English-Hebrew, Hebrew-English Dictionary

בהצלחה! (MODULE C) Hoffman, Y. (2014). The Universal English-Hebrew, Hebrew-English Dictionary בגרות סוג הבחינה: מדינת ישראל קיץ תשע"ז, 2017, מועד ב מועד הבחינה: משרד החינוך 403 016104, מספר השאלון: אנגלית שאלון ג' (MODULE C) ג רסה א' הוראות לנבחן א. משך הבחינה: שעה וחצי ב. מבנה השאלון ומפתח ההערכה:

More information

A R E Y O U R E A L L Y A W A K E?

A R E Y O U R E A L L Y A W A K E? A R E Y O U R E A L L Y A W A K E? ב ר ו ך א ת ה י י א לה ינ ו מ ל ך ה עו ל ם, ה מ ע ב יר ש נ ה מ ע ינ י ות נ ומ ה מ ע פ ע פ י Blessed are You, Hashem our God, King of the Universe, who removes sleep from

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ג, 2013 מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:

More information

תכניות סטנדרטיות ב UNIX שרשור פקודות באמצעות Pipeline עבודה ב- bash

תכניות סטנדרטיות ב UNIX שרשור פקודות באמצעות Pipeline עבודה ב- bash תכניות סטנדרטיות ב UNIX שרשור פקודות באמצעות Pipeline עבודה ב- bash הרכבת פקודות Pipeline 2 נניח שברצוננו להדפיס את התוכן של תיקיה המכילה הרבה קבצים לא נוכל במצב זה לראות את כל הקבצים נוכל להשתמש בהפנית

More information

הבסיס כתיבת התכנית הראשונה שימוש במשתנים. הטיפוס הבסיסי object. הטיפוס הבסיסי string משפטי בקרה. שימוש ב- Enumerations. שימוש ב- Namespaces

הבסיס כתיבת התכנית הראשונה שימוש במשתנים. הטיפוס הבסיסי object. הטיפוס הבסיסי string משפטי בקרה. שימוש ב- Enumerations. שימוש ב- Namespaces 1 הבסיס כתיבת התכנית הראשונה שימוש במשתנים הטיפוס הבסיסי object הטיפוס הבסיסי string משפטי בקרה שימוש ב- Enumerations שימוש ב- Namespaces המתודה Main כתיבת הערות פקודות קדם מהדר 2 כתיבת התכנית הראשונה

More information

מערכים Haim Michael. All Rights Reserved.

מערכים Haim Michael. All Rights Reserved. 1 מערכים יצירת מערך הפונקציה var_dump הפונקציה print_r אופן הפעולה של מערך מערך דו מימדי הפקודה list האופרטור,+,==,===!= ו-!== הפונקציה count הפונקציה is_array הפונקציה isset הפונקציה array_key_exists

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, מועד ב מועד הבחינה: משרד החינוך מספר השאלון: 016117 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א. משך הבחינה: שעה וחצי אנגלית שאלון

More information

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון א' Corresponds with Module A (Without Access to Information from Spoken Texts) גרסה א'

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון א' Corresponds with Module A (Without Access to Information from Spoken Texts) גרסה א' תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך מקום להדבקת מדבקת נבחן א נ ג ל י ת סוג בחינה: מועד הבחינה: מספר השאלון: מבחן מטה לבתי ספר תיכוניים חורף תשע"ד 29.01.2014 מותאם לשאלון א' של בחינת הבגרות שסמלו

More information

במבוא מורחב למדעי המחשב בשפת פייתון

במבוא מורחב למדעי המחשב בשפת פייתון עמוד 1 מתוך 11 בחינה במבוא מורחב למדעי המחשב בשפת פייתון 8630.0081.80 סמסטר ב', מועד ב',תשע"ב 12/08/2012 אוהד ברזילי, אמיר רובינשטיין הוראות )נא לקרוא!( משך הבחינה שלוש שעות, חלקו את זמנכם ביעילות. בבחינה

More information

A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES

A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES Sinning in Disguise Like people of all faiths, Jews sometimes do things or go to places they are not supposed to. This session is not about

More information

אנגלית (MODULE E) בהצלחה!

אנגלית (MODULE E) בהצלחה! 3 בגרות סוג הבחינה: מדינת ישראל חורף תשע"ט, 2019 מועד הבחינה: משרד החינוך 016481 מספר השאלון: א. משך הבחינה: שעה ורבע אנגלית שאלון ה' (MODULE E) ג רסה א' הוראות לנבחן מבנה השאלון ומפתח ההערכה: בשאלון זה

More information

Reflection Session: Sustainability and Me

Reflection Session: Sustainability and Me Goals: Participants will: identify needs in their home communities apply their sustainability learning to the conditions of their home communities design a sustainable project idea and evaluate the ideas

More information

תרגיל בית מספר - 1 להגשה עד 9 בנובמבר בשעה 23:55

תרגיל בית מספר - 1 להגשה עד 9 בנובמבר בשעה 23:55 תרגיל בית מספר - 1 להגשה עד 9 בנובמבר בשעה 23:55 קיראו בעיון את הנחיות העבודה וההגשה המופיעות באתר הקורס, תחת התיקייה.assignments חריגה מההנחיות תגרור ירידת ציון / פסילת התרגיל. הנחיות והערות ספציפיות

More information

3. class attr_accessor def end 9. end puts "

3. class attr_accessor def end 9. end puts 1. #!/usr/bin/env ruby 2. 3. class Ruby 4. attr_accessor :programming_language 5. 6. def to_s 7. @programming_language 8. 9. 10. 11. rb = Ruby.new 12. rb.programming_language = "ruby" 13. 14. puts rb.to_s

More information

זה. Nir Adar

זה. Nir Adar גירסה 28.4.2003-1.00 האסמבלי של 8086 חלק שני מסמך זה הורד מהאתר. אין להפיץ מסמך זה במדיה כלשהי, ללא אישור מפורש מאת המחבר. מחבר המסמך איננו אחראי לכל נזק, ישיר או עקיף, שיגרם עקב השימוש במידע המופיע במסמך,

More information

מבנה התכנית יסודות מדעי המחשב התכנית הראשונה שלי

מבנה התכנית יסודות מדעי המחשב התכנית הראשונה שלי 2-1 מבנה התכנית התכנית הראשונה שלי מחלקה מגדירה עצם. עצמים מתקשרים ביניהם באמצעות תכנית מ נ ח ה. בפרקים הבאים נכיר את המנחה ואת הוראות השפה, ובהמשך נלמד לשלב גם עצמים. לפניך תכנית בשפת #C. התכנית קולטת

More information

עד כה עסקנו בתוכניות שמתקדמות פקודה אחרי פקודה העתק ל- ax את הערך 3 העתק ל- bx את הערך 4 הוסף ל- ax את bx כפול את התוצאה ב- 2 והעתק ל- cx

עד כה עסקנו בתוכניות שמתקדמות פקודה אחרי פקודה העתק ל- ax את הערך 3 העתק ל- bx את הערך 4 הוסף ל- ax את bx כפול את התוצאה ב- 2 והעתק ל- cx 1 ברק גונן עד כה עסקנו בתוכניות שמתקדמות פקודה אחרי פקודה העתק ל- ax את הערך 3 העתק ל- bx את הערך 4 הוסף ל- ax את bx כפול את התוצאה ב- 2 והעתק ל- cx לעיתים נרצה שהתוכנית תבצע פקודות רק אם מתקיים תנאי מוגדר

More information

אוניברסיטת בן גוריון בנגב

אוניברסיטת בן גוריון בנגב אוניברסיטת בן גוריון בנגב מספר נבחן : מס' הקורס : 202-1-9011 מיועד לתלמידי : הנדסה במבחן זה 5 שאלות שנה תשע"ה סמ' א' מועד ב' רשמו תשובותיכם בדפי התשובות בלבד משך הבחינה : 3 שעות מחברת הטיוטה לא תימסר לבדיקה

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, מועד ב מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:

More information

התכנית הראשונה שלי

התכנית הראשונה שלי 2-1 מבנה התכנית התכנית הראשונה שלי מחלקה מגדירה עצם. עצמים מתקשרים ביניהם באמצעות תכנית מ נ ח ה. בפרקים הבאים נכיר תחילה את המנחה ואת הוראות השפה, ובהמשך נלמד לשלב גם עצמים. לפניך תכנית בשפת.Java התכנית

More information

אוניברסיטת בן גוריון בנגב

אוניברסיטת בן גוריון בנגב אוניברסיטת בן גוריון בנגב מספר נבחן : במבחן זה 6 שאלות המאפשרות לצבור יותר מ- 100 נקודות אבל הציון המרבי במבחן 100 רשמו תשובותיכם בדפי התשובות בלבד מחברת הטיוטה לא תימסר לבדיקה בסיום המבחן נאסוף רק את

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, 2012 מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:

More information

א נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים )מילון הראפס אנגלי-אנגלי-ערבי( השימוש במילון אחר טעון אישור הפיקוח על הוראת האנגלית.

א נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים )מילון הראפס אנגלי-אנגלי-ערבי( השימוש במילון אחר טעון אישור הפיקוח על הוראת האנגלית. בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. א. משך הבחינה: שעה ורבע מועד הבחינה: חורף תשס"ז, 2007 מספר השאלון: 406 016107, א נ ג ל י

More information

THINKING ABOUT REST THE ORIGIN OF SHABBOS

THINKING ABOUT REST THE ORIGIN OF SHABBOS Exploring SHABBOS SHABBOS REST AND RETURN Shabbos has a multitude of components which provide meaning and purpose to our lives. We will try to figure out the goal of Shabbos, how to connect to it, and

More information

שאלון ו' הוראות לנבחן

שאלון ו' הוראות לנבחן סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה ג. בגרות לנבחנים אקסטרניים מועד הבחינה: תשס"ו, מועד ב מספר השאלון: 406 016107, י ת ל ג נ א שאלון ו' )MODULE F( הוראות לנבחן א. משך הבחינה:

More information

תכנות בטוח חלק ב ' מאת עידו קנר

תכנות בטוח חלק ב ' מאת עידו קנר תכנות בטוח חלק ב' מאת עידו קנר הקדמה מאמר זה הינו חלק ההמשך של המאמר העוסק בנושא "התכנות הבטוח" אשר פורסם בגליון השביעי של.Digital Whisper בחלק הקודם הצגתי מקרים מאוד פשוטים וברורים אודות כמה מגישות בתכנות

More information

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37 FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO. 652082/2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37 Translated from the Hebrew Sharf Translations Message sent From: Tomer Shohat

More information

למבחן ביסודות מדעי המחשב דוגמא

למבחן ביסודות מדעי המחשב דוגמא פרק א' למבחן ביסודות מדעי המחשב דוגמא כתוב תכנית הקולט מספר למשתנה N ולאחריו N מספרים שלמים ומדפיס את כמות המספרים המתחלקים ב 3 - ללא שארית. (10 נקודות). כתוב ביטוי בוליאני המייצג את התנאי הבא: ספרת העשרות

More information

Visual C# Express יסודות מדעי המחשב 1 מהדורת עיצוב תשס"ו 2006 כתבה: יעל בילצ'יק (סופרין)

Visual C# Express יסודות מדעי המחשב 1 מהדורת עיצוב תשסו 2006 כתבה: יעל בילצ'יק (סופרין) יסודות 1 מדריך מעבדה לסביבת העבודה Visual C# Express כתבה: יעל בילצ'יק (סופרין) מהדורת עיצוב תשס"ו 2006 אוניברסיטת תל-אביב החוג להוראת המדעים מטה מל"מ המרכז הישראלי להוראת המדעים ע"ש עמוס דה-שליט משרד

More information

שאלון ד' הוראות לנבחן

שאלון ד' הוראות לנבחן סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה ג. בגרות לנבחנים אקסטרניים מועד הבחינה: תשס"ה, מועד ב מספר השאלון: 404 016105, י ת ל ג נ א שאלון ד' )MODULE D( הוראות לנבחן א. משך הבחינה:

More information

Hebrew Ulpan HEB Young Judaea Year Course in Israel American Jewish University College Initiative

Hebrew Ulpan HEB Young Judaea Year Course in Israel American Jewish University College Initiative Hebrew Ulpan HEB 011-031 Young Judaea Year Course in Israel American Jewish University College Initiative Course Description Hebrew is not only the Sacred Language of the Jewish people, but it is also

More information

מבוא למחשב בשפת Matlab

מבוא למחשב בשפת Matlab מבוא למחשב בשפת Matlab תרגול 10: רקורסיה מבוסס על שקפי הקורס "מבוא למדעי המחשב" ובסיוע שקפים של ערן אדן כל הזכויות שמורות לטכניון מכון טכנולוגי לישראל תזכורת: פונקציות להלן קוד של פונקציה בשם :func function

More information

תוכן העניינים: פרק סדרות סיכום תכונות הסדרה החשבונית:... 2 תשובות סופיות:...8 סיכום תכונות הסדרה ההנדסית:...10

תוכן העניינים: פרק סדרות סיכום תכונות הסדרה החשבונית:... 2 תשובות סופיות:...8 סיכום תכונות הסדרה ההנדסית:...10 תוכן העניינים: פרק סדרות סיכום תכונות הסדרה החשבונית: שאלות לפי נושאים: 3 שאלות העוסקות בנוסחת האיבר הכללי: 3 שאלות העוסקות בסכום סדרה חשבונית: 4 שאלות מסכמות: 5 תשובות סופיות: 8 סיכום תכונות הסדרה ההנדסית:

More information

A Long Line for a Shorter Wait at the Supermarket

A Long Line for a Shorter Wait at the Supermarket A Long Line for a Shorter Wait at the Supermarket - New York Times Page 1 of 4 A Long Line for a Shorter Wait at the Supermarket Sam Baris directing customers at Whole Foods in Columbus Circle, where the

More information

DNS פרק 4 ג' ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים 1

DNS פרק 4 ג' ברק גונן מבוסס על ספר הלימוד רשתות מחשבים עומר רוזנבוים 1 DNS פרק 4 ג' שכבת האפליקציה, פרוטוקול ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים מאת 1 בסיום הפרק נדע: מה תפקיד פרוטוקול?DNS לשם מה צריך?DNS מהי ההיררכיה של כתובות דפי האינטרנט? מהו,TLD

More information

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה!

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה! בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. חורף תשס"ח, 2008 מועד הבחינה: מספר השאלון: 402 016103, א. משך הבחינה: שעה ורבע א נ ג ל י

More information

מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית (MODULE C) מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי قاموس إنجليزي - إنجليزي - عربي

מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית (MODULE C) מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי قاموس إنجليزي - إنجليزي - عربي בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. חורף תשע"ג, 2013 מועד הבחינה: 403 016104, מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית

More information

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה!

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה! בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. תשס"ז, מועד ב מועד הבחינה: מספר השאלון: 402 016103, א. משך הבחינה: שעה ורבע א נ ג ל י ת

More information

מבוא לאסמבלי מאת אופיר בק חלקים נרחבים ממאמר זה נכתבו בהשראת הספר "ארגון המחשב ושפת סף" אשר נכתב ע"י ברק גונן לתוכנית גבהים של משרד החינוך.

מבוא לאסמבלי מאת אופיר בק חלקים נרחבים ממאמר זה נכתבו בהשראת הספר ארגון המחשב ושפת סף אשר נכתב עי ברק גונן לתוכנית גבהים של משרד החינוך. מאת אופיר בק חלקים נרחבים ממאמר זה נכתבו בהשראת הספר "ארגון המחשב ושפת סף" אשר נכתב ע"י ברק גונן לתוכנית גבהים של משרד החינוך. הקדמה בסדרת המאמרים הקרובה, אנחנו הולכים ללמוד על השפה אסמבלי, על השימוש בה

More information

Computer Structure. Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה.

Computer Structure. Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה. שם: ת.ז: ציון: Computer Structure Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה. שאלה 1 appleממש מערכת אשר קולטת בכל מחזור שעון ביט קלט בודדX. כדי להגדיר את הפלט של המערכת במחזור השעון הappleוכחי

More information

אנגלית שאלון ז' ג רסה א' הוראות לנבחן בהצלחה! )4( ההנחיות בשאלון זה מנוסחות בלשון זכר ומכוונות לנבחנות ולנבחנים כאחד. (MODULE G)

אנגלית שאלון ז' ג רסה א' הוראות לנבחן בהצלחה! )4( ההנחיות בשאלון זה מנוסחות בלשון זכר ומכוונות לנבחנות ולנבחנים כאחד. (MODULE G) 3 בגרות סוג הבחינה: מדינת ישראל חורף תשע"ט, 2019 מועד הבחינה: משרד החינוך 016582 מספר השאלון: א. משך הבחינה: שעה וארבעים וחמש דקות אנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן מבנה השאלון ומפתח ההערכה:

More information

קורס מטלב לפיסיקאים שיעור מס' 10: משתנים מורכבים

קורס מטלב לפיסיקאים שיעור מס' 10: משתנים מורכבים שיעור מס' : משתנים מורכבים מערכי תאים מערך תאים הוא מערך שבו כל איבר בעצמו הוא מערך מסוג ומימדים כלשהם. לדוגמא מערך עמודה: מס' איבר 2 3 4 5 תוכן סקלר נומרי סקלר לוגי מטריצה נומרית 2 3 6 מערך-תאים (שורה

More information

2007 Zindell Technologies, Ltd.

2007 Zindell Technologies, Ltd. 1 הורשה )Inheritance( הקדמה Derivation Syntax אופן הגדרתה של מחלקה שיורשת מאחרת - משמעות ההורשה - Effects Inheritance הרשאות הגישה Modifiers Access הגדרתן מחדש של מתודות שהגיעו בהורשה - Methods Overriding

More information

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון ב' Corresponds with Module B גרסה ב' הוראות לנבחן

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון ב' Corresponds with Module B גרסה ב' הוראות לנבחן תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך מקום להדבקת מדבקת נבחן סוג בחינה: מועד הבחינה: מספר השאלון: מבחן מטה לבתי ספר תיכוניים חורף תשע"ד 29.01.2014 מותאם לשאלון ב' של בחינת הבגרות שסמלו 016103 א

More information

מדריך לתכנת הגימפ Gimp) (The חלק מהמידע במדריך זה מובא מהקישור- http://www.jlc.org.il/forums/viewtopic.php?p=900&sid=d801ea3d13f7ae97549e28a56a4ce0cb GIMP היאתכנה חופשיתרבתאפשרויותבתחום הגראפיקהועריכתהתמונות,

More information

שאלון ו' הוראות לנבחן

שאלון ו' הוראות לנבחן סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה ג. בגרות לנבחנים אקסטרניים מועד הבחינה: תשס"ה, מועד ב מספר השאלון: 406 016107, י ת ל ג נ א שאלון ו' )MODULE F( הוראות לנבחן א. משך הבחינה:

More information

interface Student {tag: Student, name: string; age: number;} const makestudent = ( name: string, age: number ) : Student =>

interface Student {tag: Student, name: string; age: number;} const makestudent = ( name: string, age: number ) : Student => תאריך 23.07.2018 שם המרצים: מני אדלר, מיכאל אלחדד, ירון גונן מבחן בקורס: עקרונות שפות תכנות קורס' מס: 202-1-2051 מיועד לתלמידי: מדעי המחשב והנדסת תוכנה שנה: ב' סמסטר: ב' מועד ב' משך הבוחן: 3 שעות חומר

More information

אנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן )מילון אנגלי-ערבי / ערבי-אנגלי )

אנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן )מילון אנגלי-ערבי / ערבי-אנגלי ) בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. חורף תשע"ג, 2013 מועד הבחינה: 407 016108, מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית

More information

תרגול 8. Hash Tables

תרגול 8. Hash Tables תרגול Hash Tables ds-ps חידה מהשיעור הקודם בכל השקים המטבעות שוקלים ורק בשק אחד המטבעות שוקלים.. מותר לנו לבצע שקילה אחת בלבד! איך נדע מה השק הקל יותר? שקים עם מטבעות ds-ps מה היה לנו דיברנו על מבני נתונים

More information

מבחן באנגלית בהצלחה הצלחה!!! שם פרטי: שם משפחה: מס' תעודת זהות: תאריך: שם מרכז מנהל מרכז השכלה: תאריך בדיקת המבחן: כל הזכויות שמורות למשרד החינוך

מבחן באנגלית בהצלחה הצלחה!!! שם פרטי: שם משפחה: מס' תעודת זהות: תאריך: שם מרכז מנהל מרכז השכלה: תאריך בדיקת המבחן: כל הזכויות שמורות למשרד החינוך מדינת ישראל משרד החינוך מינהל חברה ונוער מבחן באנגלית שם פרטי: שם משפחה: מס' תעודת זהות: תאריך: מנהל מרכז השכלה: שם: שם מרכז ההשכלה /מוסד : ציון: תאריך בדיקת המבחן: כולה שהמערכת מוסרית, ומוסרית ערכית רואים

More information

(MODULE E) ב ה צ ל ח ה!

(MODULE E) ב ה צ ל ח ה! סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה מועד הבחינה: קיץ תשס"ד, 2004 מספר השאלון: 016106 י ת ל ג נ א שאלון ה' (MODULE E) הוראות לנבחן א. משך הבחינה: שעה ורבע בשאלון זה שני פרקים.

More information

פעולות קלט פלט Streams( )I\O

פעולות קלט פלט Streams( )I\O 1 פעולות קלט פלט Streams( )I\O הקדמה היררכיית מחלקות ה- I\O Java המחלקות האבסטרקטיות InputStream ו- OutputStream המחלקות FileInputStream ו- FileOutputStream המחלקות ObjectInputStream ו- ObjectOutputStream

More information

םימתירוגלאו םינותנ ינבמ המירעו תינס, חמ רות רקצול הנילופ

םימתירוגלאו םינותנ ינבמ המירעו תינס, חמ רות רקצול הנילופ תור,מחסנית פולינה לוצקר וערימה מבני נתונים ואלגוריתמים מנהלות מרצה הקורס: פרופסור יורם לוזון פולינה מתרגלת: לוצקר אימייל: polinalutbiu@gmail.com, שעות קבלה: 13:00-15:00 יום שני בתיאום מראש. אתר הקורס:

More information

Theories of Justice

Theories of Justice Syllabus Theories of Justice - 56981 Last update 06-08-2014 HU Credits: 2 Degree/Cycle: 1st degree (Bachelor) Responsible Department: political Science Academic year: 2 Semester: 2nd Semester Teaching

More information

יסודות מבני נתונים. תרגול :9 ערימה - Heap

יסודות מבני נתונים. תרגול :9 ערימה - Heap יסודות מבני נתונים תרגול :9 ערימה - Heap maximum שאלה: כמה זמן לוקח לחפש איבר בערימה? תשובה:,O(n) למרות שבערימה קיים סדר מסויים. Heaps 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 דוגמה: 7 11 13 21 12 17 20 34

More information

חוק זכויות הסוכן חוק חוזה סוכנות )סוכן מסחרי וספק(

חוק זכויות הסוכן חוק חוזה סוכנות )סוכן מסחרי וספק( חוק זכויות הסוכן חוק חוזה סוכנות )סוכן מסחרי וספק( התשע"ב - 2012 חברות וחברי לשכה יקרים, אני שמח להגיש לכם חוברת זו בה תמצאו את חוק זכויות הסוכן בנוסחו המקורי ואת תרגומו לאנגלית על ידי עו"ד שוש רבינוביץ,

More information

מבחן בקורס מבוא מורחב למדעי המחשב, CS1001.py עם תיקונים קלים והבהרות שניתנו במהלך המבחן ביה"ס למדעי המחשב, אונ' תל אביב

מבחן בקורס מבוא מורחב למדעי המחשב, CS1001.py עם תיקונים קלים והבהרות שניתנו במהלך המבחן ביהס למדעי המחשב, אונ' תל אביב מבחן בקורס מבוא מורחב למדעי המחשב, CS1001.py עם תיקונים קלים והבהרות שניתנו במהלך המבחן ביה"ס למדעי המחשב, אונ' תל אביב סמסטר ב' 2017, מועד ב, 7/9/2017 מרצים: פרופ' בני שור, ד"ר אמיר רובינשטיין מתרגלים:

More information

הצעת תשובות לשאלות בחינת הבגרות אנגלית

הצעת תשובות לשאלות בחינת הבגרות אנגלית בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ג, 2013 מועד הבחינה: משרד החינוך מספר השאלון: 016117 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( הצעת תשובות לשאלות בחינת הבגרות אנגלית

More information

מדריך למשתמש התקנה עצמית

מדריך למשתמש התקנה עצמית 256 מדריך למשתמש התקנה עצמית תכולת הערכה 1 1 מחבר חשמלי 1 כבל,DSL עבור חיבור לשקע DSL 1 כבל רשת שקע עבור חיבור עבור למחשב חיבור למחש 1 נתב 2 שלב א' חיבור לחשמל וחיווי נוריות חיבור לחשמל חבר את כבל החשמל

More information

חטיבת הביניים "יונתן" עבודה לקיץ באנגלית לבוגרי כיתה עבודה נעימה!

חטיבת הביניים יונתן עבודה לקיץ באנגלית לבוגרי כיתה עבודה נעימה! חטיבת הביניים "יונתן" עבודה לקיץ באנגלית לבוגרי כיתה העולים לכיתה ח' הקבצה א' ז' עבודה נעימה! Booklet For the 7th Grade בוגרי כיתות ז' יקרים, חוברת הקיץ שלפניכם הינה חזרה על אוצר מילים ועל המבנים הדקדוקיים

More information

מ ש ר ד ה ח י נ ו ך ה פ ד ג ו ג י ת א ש כ ו ל מ ד ע י ם על ה ו ר א ת ה מ ת מ ט י ק ה מחוון למבחן מפמ"ר לכיתה ט', רמה מצומצמת , תשע"ב טור א'

מ ש ר ד ה ח י נ ו ך ה פ ד ג ו ג י ת א ש כ ו ל מ ד ע י ם על ה ו ר א ת ה מ ת מ ט י ק ה מחוון למבחן מפמר לכיתה ט', רמה מצומצמת , תשעב טור א' ה פ ו י ת ש כ ו ל מ ע י ם על ה ו ר ת ה מ ת מ ט י ק ה כ" ייר, תשע".5.0 מחוון למחן מפמ"ר לכיתה ט', רמה מצומצמת 0, תשע" שלה סעיף תשוות טור ' ניקו מפורט והערות תשוה: סעיף III נקוות תשוה מלה נק' לכל שיעור משיעורי

More information

פקס בחיבור המכשיר המשולב לפקס יש לעבור על השלבים הבאים: - חבר את כבל הטלפון לחיבור ה- LINE בגב המדפסת ואת צידו השני לשקע הטלפון בקיר.

פקס בחיבור המכשיר המשולב לפקס יש לעבור על השלבים הבאים: - חבר את כבל הטלפון לחיבור ה- LINE בגב המדפסת ואת צידו השני לשקע הטלפון בקיר. פקס בחיבור המכשיר המשולב לפקס יש לעבור על השלבים הבאים: חבר את כבל הטלפון לחיבור ה LINE בגב המדפסת ואת צידו השני לשקע הטלפון בקיר שקע LINE שקע טלפון בקיר במידה ויש בנקודה הנוכחית טלפון נוסף, יש באפשרותך

More information

מבוא למדעי המחשב בשפת ++C - חוברת תרגילים

מבוא למדעי המחשב בשפת ++C - חוברת תרגילים מבוא למדעי המחשב בשפת ++C חוברת תרגילים הגשת התרגילים היא ביחידים, יש להגיש במערכת ה moodle את כל הפרוייקט כקובץ.ZIP חובה להגיש תרגיל שמתקמפל + דוגמאות פלט של ההרצה. יש להקפיד על הדברים הבאים: שמות משתנים

More information

תוכנה 1 אביב תשע"ג תרגיל מספר 7 לכל אורך התרגיל ניתן להוסיף שירותי עזר בתנאי שאינם פוגעים בנדרש בסעיפים אחרים.

תוכנה 1 אביב תשעג תרגיל מספר 7 לכל אורך התרגיל ניתן להוסיף שירותי עזר בתנאי שאינם פוגעים בנדרש בסעיפים אחרים. תוכנה 1 אביב תשע"ג תרגיל מספר 7 הנחיות כלליות: קראו בעיון את קובץ נהלי הגשת התרגילים אשר נמצא באתר הקורס..(http://moodle.tau.ac.il/) בלבד הגשת התרגיל תיעשה במערכת ה- moodle יש להגיש קובץ zip יחיד הנושא

More information

כפתור רדיו בחירה בודדת מתוך רשימת אפשרויות

כפתור רדיו בחירה בודדת מתוך רשימת אפשרויות תכנות בסביבת האינטרנט 1 כפתור רדיו בחירה בודדת מתוך רשימת אפשרויות כפתור רדיו משמש למקרים שבהם יש לבחור באפשרות אחת מתוך רשימת האפשרויות שבקבוצה. למשל: שאלון רב-ברירות )שאלון אמריקאי( שבו יש רק תשובה אחת

More information

Genetic Tests for Partners of CF patients

Genetic Tests for Partners of CF patients Disclaimer: this presentation is not a genetic/medical counseling The Annual Israeli CF Society Meeting Oct 2013 Genetic Tests for Partners of CF patients Ori Inbar, PhD A father to a 8 year old boy with

More information

מבחן מועד ב' אנא קיראו היטב את ההראות שלהלן:

מבחן מועד ב' אנא קיראו היטב את ההראות שלהלן: מבחן מועד ב' תאריך הבחינה: 3.3.2015 שמות המרצים: דר' רועי זיון פרופ' משה זיפר פרופ' מיכאל קודיש דר' צחי רוזן גב' מיכל שמש שם הקורס: מבוא למדעי המחשב אנא קיראו היטב את ההראות שלהלן: מספר הקורס: 202-1-1011

More information

מותאמת לסביבת. Visual C# 2005 Express שונות. ולבצע rename לשם המבוקש

מותאמת לסביבת. Visual C# 2005 Express שונות. ולבצע rename לשם המבוקש מאגר מעבדות לשפות התכנות החדשות ניתן להשתמש בחומרים לצורך הוראה בלבד. לא ניתן לפרסם את החומרים או לעשות בהם כל שימוש מסחרי ללא קבלת אישור מראש מצוות הפיתוח בראשות ד"ר תמר פז. המעבדה בקובץ זה מיועדת לתלמידים

More information

לאחר מכן נוכל לכתוב תוכניות שכוללות אלגוריתמים

לאחר מכן נוכל לכתוב תוכניות שכוללות אלגוריתמים 1 ברק גונן נלמד את הפקודות הבסיסיות של אסמבלי הגדרת משתנים ופקודת העתקה )מצגת 6( פקודות אריתמטיות, לוגיות, הזזה )מצגת 7( פקודות השוואה, קפיצה ולולאות )מצגת 8( בחלקים: לאחר מכן נוכל לכתוב תוכניות שכוללות

More information

לשרטוט חשמלי בתוכנת OrCad-Capture

לשרטוט חשמלי בתוכנת OrCad-Capture חוברת עזר לשרטוט חשמלי בתוכנת OrCad-Capture כתב: רימונד מנסור סמסטר חורף תשס"ח 1 .1 הקדמה תוכנת ה - OrCad מהי?... 3 2. התחלת פרויקט חדש... 3 2.1 הפעלת תוכנת ה-... OrCad 3 2.2 פתיחת פרויקט חדש... 4 2.3

More information

IBM System x3690 X5 תושבות. בלבד" מסוג.Nehalem EX במיוחד. Intel Xeon Nehalem EX 32 עד 64 רכיבי DIMM מסוג DDR3

IBM System x3690 X5 תושבות. בלבד מסוג.Nehalem EX במיוחד. Intel Xeon Nehalem EX 32 עד 64 רכיבי DIMM מסוג DDR3 System x and BladeCenter IBM System x3690 X5 שרת High-End בעל שתי תושבות הראשון בתעשייה אשר מציע ביצועים וזיכרון מרביים שרת מדרגי ( scalable ) בגודל 2U בעל קיבולת זיכרון גדולה עד פי 4 בהשוואה לשרתי שתי

More information